﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Data.SqlClient;

namespace DAO
{
    public class DAOSexo
    {
        public static List<Entidad.EntidadSexo> getTodas()
        {
            List<Entidad.EntidadSexo> lista = new List<Entidad.EntidadSexo>();
            AccesoDato ad = new AccesoDato();
            try
            {
                String sql = "Select Id_Sexo, Nombre from Sexo order by nombre";
                SqlDataReader dr = ad.ejecutarSql(sql, null);

                while (dr.Read())
                {
                    Entidad.EntidadSexo e = new Entidad.EntidadSexo();
                    e.id_sexo = int.Parse(dr["id_sexo"].ToString());
                    e.nombre = dr["nombre"].ToString();
                    lista.Add(e);
                }
            }
            catch (ApplicationException)
            {
                throw new ApplicationException("Error al obtener todos los sexos");
            }
            finally
            {
                ad.cerrarDR();
            }

            return lista;
        }

        public static Entidad.EntidadSexo buscar(int id_sexo)
        {
            Entidad.EntidadSexo e = new Entidad.EntidadSexo();
            AccesoDato ad = new AccesoDato();
            try
            {
                String sql = "select id_sexo, nombre from sexo where id_sexo = @id_sexo";
                SqlParameter parametro = new SqlParameter("id_sexo", id_sexo);
                List<SqlParameter> parametros = new List<SqlParameter>();
                parametros.Add(parametro);
                SqlDataReader dr = ad.ejecutarSql(sql, parametros);
                while (dr.Read())
                {
                    e.id_sexo = int.Parse(dr["id_sexo"].ToString());
                    e.nombre = dr["nombre"].ToString();
                }
            }
            catch (ApplicationException)
            {

                throw new ApplicationException("Error al obtener el sexo");
            }
            finally
            {
                ad.cerrarDR();
            }
            return e;
        }
    }
}
